package com.ruoyi.swla2.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 告警对象 dm_warn_ss
 *
 * @author gdqt
 * @date 2023-09-11
 */
@TableName("dm_warn_ss")
public class WarnSs {
    private static final long serialVersionUID = 1L;

    /**
     * 平台自增主键
     */
    @TableId(value="ID",type = IdType.AUTO)
    private Long ID;

    /**
     * 租户ID
     */
    @TableField("tenant_id")
    private String tenantId;

    /**
     * 报警对象类型，对应自定义字典表WarnTargetType
     */
    @TableField("TargetType")
    private Long TargetType;

    /**
     * 报警对象ID
     */
    @TableField("TargetID")
    private String TargetID;

    /**
     * 报警状态，0未确认，1已确认
     */
    @TableField("WarnStatus")
    private Long WarnStatus;

    /**
     * 处理状态，0未处理，1已处理
     */
    @TableField("HandleStatus")
    private Long HandleStatus;

    /**
     * 报警参数，对应自定义字典表WarnParamType
     */
    @TableField("WarnParamType")
    private Long WarnParamType;

    /**
     * 报警类型，1超上限，2超下限，3阈值，4累计，5连续
     */
    @TableField("WarnType")
    private Long WarnType;

    /**
     * 开始时间
     */
    @TableField("StartTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date StartTime;

    /**
     * 最近报警时间
     */
    @TableField("RecentlyWartTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date RecentlyWartTime;

    /**
     * 数据冻结时间
     */
    @TableField("freezetime")
    private String freezetime;

    /**
     * 报警值-实际数值
     */
    @TableField("WarnValue")
    private BigDecimal WarnValue;

    /**
     * 参考值-超上限则上限值，超下限则下限值
     */
    @TableField("ReferenceValue")
    private BigDecimal ReferenceValue;

    /**
     * 差值
     */
    @TableField("Value")
    private BigDecimal Value;

    /**
     * 确认人
     */
    @TableField("ConfirmedBy")
    private String ConfirmedBy;

    /**
     * 派单状态
     */
    @TableField("pd")
    private String pd;

    public Long getID() {
        return ID;
    }

    public void setID(Long ID) {
        this.ID = ID;
    }

    public String getTenantId() {
        return tenantId;
    }

    public void setTenantId(String tenantId) {
        this.tenantId = tenantId;
    }

    public Long getTargetType() {
        return TargetType;
    }

    public void setTargetType(Long targetType) {
        TargetType = targetType;
    }

    public String getTargetID() {
        return TargetID;
    }

    public void setTargetID(String targetID) {
        TargetID = targetID;
    }

    public Long getWarnStatus() {
        return WarnStatus;
    }

    public void setWarnStatus(Long warnStatus) {
        WarnStatus = warnStatus;
    }

    public Long getHandleStatus() {
        return HandleStatus;
    }

    public void setHandleStatus(Long handleStatus) {
        HandleStatus = handleStatus;
    }

    public Long getWarnParamType() {
        return WarnParamType;
    }

    public void setWarnParamType(Long warnParamType) {
        WarnParamType = warnParamType;
    }

    public Long getWarnType() {
        return WarnType;
    }

    public void setWarnType(Long warnType) {
        WarnType = warnType;
    }

    public Date getStartTime() {
        return StartTime;
    }

    public void setStartTime(Date startTime) {
        StartTime = startTime;
    }

    public Date getRecentlyWartTime() {
        return RecentlyWartTime;
    }

    public void setRecentlyWartTime(Date recentlyWartTime) {
        RecentlyWartTime = recentlyWartTime;
    }

    public String getFreezetime() {
        return freezetime;
    }

    public void setFreezetime(String freezetime) {
        this.freezetime = freezetime;
    }

    public BigDecimal getWarnValue() {
        return WarnValue;
    }

    public void setWarnValue(BigDecimal warnValue) {
        WarnValue = warnValue;
    }

    public BigDecimal getReferenceValue() {
        return ReferenceValue;
    }

    public void setReferenceValue(BigDecimal referenceValue) {
        ReferenceValue = referenceValue;
    }

    public BigDecimal getValue() {
        return Value;
    }

    public void setValue(BigDecimal value) {
        Value = value;
    }

    public String getConfirmedBy() {
        return ConfirmedBy;
    }

    public void setConfirmedBy(String confirmedBy) {
        ConfirmedBy = confirmedBy;
    }

    public String getPd() {
        return pd;
    }

    public void setPd(String pd) {
        this.pd = pd;
    }
}
